
/*
author: "管理员"
category: "爱生活"
categoryId: 1
content: "见智对美团点评的“分部估值法”持有保留意见，两种估值方法得到截然相反的估值结果，本质上是对外卖业务的价值评估分歧。"
cover: "http://localhost/https://wpimg.wallstcn.com/9778718c-e680-4cef-88ad-9b62f21043a8.jpg"
date: "2019-05-28"
id: 220
read: 255
state: "已发布"
title: "借美团点评发布最佳财报之际，我们讨论一下估值分歧 | 见智研究团队"
*/





$(function () {
    
    // 定义一个全局变量
    let poms = {
        key: '',
        // string	搜索关键词，可以为空，为空返回某类型所有文章
        type: '',	
        // string	文章类型id，可以为空，为空返回所有类型文章
        state: '',	
        // string	文章状态，草稿 ，已发布, 为空返回所有状态文章
        page: 1,	
        // number	当前页，为空返回第1页
        perpage: 10,	
        // number	每页显示条数，为空默认每页6条
    }

    // 1.搜索  发送请求 /admin/article/query
    function articleQuery() {
        $.get('/admin/article/query', poms, function (res) {
            // console.log(res);
            const html = template('trTpl', { list: res.data.data })
            $('tbody').html(html)

            // 分页调用获取数据
            renderPager(res.data.totalCount)
        })
        
    }


    // 2.下拉分类  /admin/category/list
    function categoryList() {
        // 2.1获取数据
        $.get('/admin/category/list', function (res) {
            // console.log(res);
            // 2.2显示所有类型
            let html = "<option value=''>所有类型</option>"
            // 2.3遍历数据
            res.data.forEach(value => {
                // 2.4动态数据渲染到静态
                html += `<option value="${value.id}">${value.name}</option>`
            })
            // 2.5放到标签里
            $('#selCategory').html(html)
        })
    }



    // 3.分页
    function renderPager(count) {        
        // layui拿到动态渲染
        layui.laypage.render({
            // 3.1动态数据渲染到静态页面 pager是id选择器
            //注意，这里的 test1 是 ID，不用加 # 号
            elem: 'pager',
            //3.2数据总数，从服务端得到
            count, 
            // 3.3默认每页数据条数10
            limit: poms.perpage,
            // 3.4显示页面
            curr: poms.page,
            // 3.5跳转事件
            jump(obj, first) {
                if (!first) {
                    // 3.6获取被点击页数
                    poms.page = obj.curr
                    // 3.7刷新页面
                    articleQuery()
                }
            }
        });
    }


    // 4.点击筛选 点击事件
    $('#btnSearch').click(function () {
        // 4.1获取输入框的值
        poms.key = $('#aname').val()
        // 4.2获取类型的值
        poms.type = $('#selCategory').val()
        // 4.3获取状态的值
        poms.state = $('#selStatus').val()

        // 解决bug到21页后筛选不到
        poms.page = 1
        // 4.4刷新页面
        articleQuery()
    })



    // 5.重置清空事件
    $('#btnSeaer').click(function () {
        // 
        // location.render()
        // return

        // 5.1回到原有的状态
        poms = {
            key: '',
            type: '',	
            state: '',	
            page: 1,	
            perpage: 10,	
        }

        // 5.2清空输入框 类型框 状态框
        $('#aname').val('')
        $('#selCategory').val('')
        $('#selStatus').val('')

        // 5.3刷新页面
        articleQuery()
    })

    // 调用
    articleQuery()
    categoryList()


    
    

    // 6.删除  绑定委托事件
    $('.table-hover').on('click', '.delete', function () {
        // 6.1弹出是否删除
        layer.confirm('您要删除吗？', (index) => {
            // 6.2获取到id
            const  id  = $(this).parents('tr').data('id')
            // console.log({id});
            // 6.3发送删除请求
            $.post('/admin/article/delete', { id }, function () {
                // 6.4刷新页面
                articleQuery()
                // 6.5关闭弹窗
                layer.close(index)
            })
        })
    })
})
